Tajna aplikace
Otázka od: Josef Straka
7. 12. 2002 19:29
Prijemny den,
D5Prof W95OSR2+MSIE5.5
Delam takovy program, ktery bude sledovat, jake programy pouzivaji a jak
dlouho v nich pracuji uzivatele (treba hry v praci). Jde ale o to, aby ten
clovek nevedel, ze je meren. Proto ten program nesmi byt videt ve Start
liste. To delam pomoci teto procedury:
procedure TForm1.WndProc(var Msg : TMessage);
begin
if (Msg.Msg = WM_SYSCOMMAND) and (Msg.WParam = SC_MINIMIZE) then
begin
Form1.Hide;
Exit;
end;
inherited WndProc(Msg);
end;
Jde mi ale o to, abych se tam ja sam potom dostal. Nevim, jak pote ten
program zase vyvolat na obrazovku, treba po zadani nejakeho hesla. Myslel
jsem, ze by se dala osetrit jen jedna instance programu a pri pokusu o
spusteni druhe instance by vyskocilo okno s heslem a v pripade dobreho hesla
by se program zase objevil Form1.Visible:= True.
Nevim ale, jak na to, muzete mi pomoci.
Straka Josef
e-mail: strakajosef@quick.cz
www: http://strakaj.zde.cz
Odpovedá: David Kraina
7. 12. 2002 20:11
A co tak zkusit Form1.Show ???
> procedure TForm1.WndProc(var Msg : TMessage);
> begin
> if (Msg.Msg = WM_SYSCOMMAND) and (Msg.WParam = SC_MINIMIZE) then
> begin
> Form1.Hide;
> Exit;
> end;
> inherited WndProc(Msg);
> end;
>
> Jde mi ale o to, abych se tam ja sam potom dostal. Nevim, jak pote ten
> program zase vyvolat na obrazovku, treba po zadani nejakeho hesla. Myslel
Odpovedá: ing. Jan Fiala
7. 12. 2002 21:07
7.12.2002 Josef Straka:
> Prijemny den,
> D5Prof W95OSR2+MSIE5.5
> Delam takovy program, ktery bude sledovat, jake programy pouzivaji a jak
> dlouho v nich pracuji uzivatele (treba hry v praci). Jde ale o to, aby ten
> clovek nevedel, ze je meren. Proto ten program nesmi byt videt ve Start
> liste. To delam pomoci teto procedury:
> procedure TForm1.WndProc(var Msg : TMessage);
> begin
> if (Msg.Msg = WM_SYSCOMMAND) and (Msg.WParam = SC_MINIMIZE) then
> begin
> Form1.Hide;
> Exit;
> end;
> inherited WndProc(Msg);
> end;
> Jde mi ale o to, abych se tam ja sam potom dostal. Nevim, jak pote ten
> program zase vyvolat na obrazovku, treba po zadani nejakeho hesla. Myslel
> jsem, ze by se dala osetrit jen jedna instance programu a pri pokusu o
> spusteni druhe instance by vyskocilo okno s heslem a v pripade dobreho hesla
> by se program zase objevil Form1.Visible:= True.
> Nevim ale, jak na to, muzete mi pomoci.
Muzes si napsat jiny program, ktery mu jen posle zpravu a na zaklade
teto zpravy se program zobrazi.
Dalsim resenim je klavesova zkratka na urovni systemu, po ktere se
program opet objevi.
--
Jan Fiala
mailto:jan.fiala@iol.cz
Odpovedá: Josef Straka
11. 12. 2002 20:15
Prijemny den,
D5Prof W95OSR2+MSIE5.5
> > Delam takovy program, ktery bude sledovat, jake programy pouzivaji a jak
> > dlouho v nich pracuji uzivatele (treba hry v praci). Jde ale o to, aby
ten
> > clovek nevedel, ze je meren. Proto ten program nesmi byt videt ve Start
> > liste. To delam pomoci teto procedury:
if (Msg.Msg = WM_SYSCOMMAND) and (Msg.WParam = SC_MINIMIZE) then
Form1.Hide;
inherited WndProc(Msg);
Nu a ted bych chtel z jine aplikace tuto dostat znovu na plochu:
Najdu to spravne okno, ale nevim, co mu mam poslat, aby se znovu
objevilo????
Takhle to umim zavrit.
procedure TForm1.Button1Click(Sender: TObject);
var hwnd:THandle;
begin
hwnd:=FindWindow(nil,'Tajna aplikace');
if hwnd<>0 then
ShowMessage('mám ho');
PostMessage(hwnd,WM_CLOSE,0,0);
end;
Jsem asi tupej, poradte tupounovi. Diky, Straka Josef.
Odpovedá: Ales Pavel
11. 12. 2002 20:47
No pepo, mas to v api knihovne,nezkousel jsem to ale melo by to byt.....
nejak takto?
hwnd:=FindWindow(nil,'Tajna aplikace');
if hwnd<>0 then
ShowMessage('mám ho');
ShowWindow(hwnd,SW_SHOWNORMAL);
mam toho tucha...zkus to...
Hezky den
Ales Pavel
TalpaSoft - software pro kazdeho
tel:0777/992792
web: http://Talpa.chytrak.cz
e-casopis: http://rozarkaweb.aktualne.cz
Odpovedá: Ales Pavel
11. 12. 2002 20:45
>
> if (Msg.Msg = WM_SYSCOMMAND) and (Msg.WParam = SC_MINIMIZE) then
> Form1.Hide;
> inherited WndProc(Msg);
Tak na tohle mi jednou Petr Vones rekl FUUUUJ TO JE PRASARNA
Kdyz uz tak spis pomoci uzivatelsky definovane message kterou posles
woknu....
Hezky den
Ales Pavel
D6 Ent WXP
laik v profesionalnim kolotoci
http://talpa.chytrak.cz/